设置异步信号监听。
bool swoole_process::signal(int $signo, callable $callback);
- 此方法基于
signalfd
和eventloop
是异步IO,不能用于同步程序中 - 同步阻塞的程序可以使用pcntl扩展提供的
pcntl_signal
$callback
如果为null
,表示移除信号监听- 如果已设置了此信号的回调函数,重新设置时会覆盖历史设置
使用举例:
swoole_process::signal(SIGTERM, function($signo) {
echo "shutdown.";
});
swoole_server中不能设置SIGTERM和SIGALAM信号
swoole_process::signal在swoole-1.7.9以上版本可用
信号移除特性仅在1.7.21或更高版本可用